home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Magnum One
/
Magnum One (Mid-American Digital) (Disc Manufacturing).iso
/
d27
/
get22.arc
/
GET.DOC
next >
Wrap
Text File
|
1991-05-28
|
37KB
|
579 lines
File:GET.DOC - Documentation for GET.EXE - Copyright 1991 Bob Stephan
PURPOSE: GET is a general purpose DOS BATch file enhancer. Its purpose is
to make information available to the BATch file through the BATch IF
subcommand. The information can come from user input or from the
operating system, and it is made available to the BATch file through the
ERRORLEVEL (Exit Code) and the GET= variable in the DOS master
environment. Get also has some capabilities to set some system parameters
and perform a few other specific actions. Most of the items are
self-explanatory as seen in the help screen below. For those which may
need more explanation, read on. If you have been using an older version
of GET, you will probably also be interested in the information in
GET22NEW.DOC to help focus in on the new and improved features.
HELP SCREEN: If you enter GET at the DOS prompt by itself, or with any
invalid argument such as a question mark, it will display the following
information:
-------------------------------------------------------------------------
GET Version 2.2 - Batch file enhancer - Copyright 1991 Bob Stephan
Syntax: GET command argument(s) More Instructions: GET.DOC
Purpose Command Argument(s) Environment Errorlevel Extended
--------- ------- ----------- --(GET=)--- --(Exit)-- --[E]---
Get character(InKey)C[E] ["prompt"][chars#sec] Character ASCII dec. No Echo
Get yes/no aNswer N[E] ["prompt"] [seconds] Character ASCII dec. No Echo
Get string S[E] ["prompt"][pattern#sec] String Length No Echo
Put string (Zap) Z[E] ["string/prompt"] String Length StdInput
Moving Text(GetaKey)T[E] "filespec" [chars] Character ASCII dec. No Echo
Key check (IsaKey) I[E] 1=yes,0=no 1=yes,0=no Get Char
Date and Time H[E] Code 1=DoW, 2=DoM, 4=Month, etc.See GET.DOC Concat
Get DOS version D[E] Major Vers. MajorMinor MinorEnv
Keyboard BUffer U[E] "chars" [num#num] Length Caps/Num
Get environment left E[E] Bytes left Bytes left Bytes/10
Get file size (DIR=0) F[E] Filespec Hex bytes Kilobytes Kb/10
Get disk free space K[E] [driveletter#div] Kilobytes Kb/10 Kb/100
Get disk capacity Q[E] [driveletter#div] Kilobytes Kb/10 Kb/100
Get volume label L[E] ["label"] [drive] Label 1=yes,0=no Match
Get memory free M[E] Kilobytes Kilobytes Kb/10
Clear (Blank) Screen B[E] [New attribute] Current or last attr. HexAttr
Check for printer(PRN) P[E] 1=yes,0=no 1=yes,0=no Initialize
Get/set video mode/border V[E] [New mode/color] Current or last mode VGA Border
Check coprocessor/CPU 7[E] 1=yes,0=no 1=yes,0=no CPU Type
Check for ANSI.SYS/Model A[E] 1=yes,0=no 1=yes,0=no PC Model
Get current directory Y[E] [drive for Y] Directory Level/Drive Drive:A=0
Warm/Cold Boot W[E] If argument given then 1=warm, 0=cold ColdBoot
See GET.DOC for additional features and BATch programming instructions.
Surrogates:}=CR,~=Esc,Alt253=Ctrl-C,Alt255=Space. Keys:{=Ext,Alt254=Enh.
-----------------------------------------------------------------------------
LICENSING: VENDORS, CORPORATE, and COMMERCIAL users see licensing terms
below. For individuals this version of GET is free for personal use, and
for the use of shareware authors in distributing their products subject
to the conditions specified in the licensing terms below. GET may be
freely copied and distributed provided the files GET.DOC and
GET22NEW.DOC are included on the disk with it. Contributions to support
this development project will be gratefully accepted.
ENTERING COMMANDS: GET is used in BATch files. When you want to use GET in
a BATch file, enter the word GET as the first entry on a line, followed
by a space and the single letter command from the above table. If you
want the extended option, enter E right after the command letter with no
space between. If there are arguments, enter a space and then the
arguments that you need or want to run the command. On the next line
check the return from GET in the ERRORLEVEL and/or the GET= variable in
the environment which can be accessed as %GET%. For example, to get a
yes or no answer you might enter the lines:
:Ask
GET N "Answer yes or no: "
IF "%GET%"=="N" goto NO
IF "%GET%"=="Y" goto YES
Rem The next line checks to see if the user pressed Escape
if ERRORLEVEL 126 goto END
ECHO You must enter Y or N, or press Esc to exit.
goto ASK
:NO
Rem [Do what you need to do if the user enters N]
goto END
:YES
Rem [Do what you need to do if the user enters Y]
:END The next line clears GET out of the environment.
set GET=
The best way to find out how GET works is to just try it. You can try
it from the command line if you use SET to check the environment, but
to find out what is in the ErrorLevel, you must use a BATch file. If you
are not familiar with the DOS Environment, see the discussion of
ENVIRONMENT AND SHELLS later in this documentation.
SYNTAX EXPLANATIONS:
Command: Commands are single characters or [optionally] a character
immediately followed by E with no spaces between. The E indicates the
Extended function above.
Argument(s): Arguments are zero, one, or two character strings as
appropriate to the command. In some cases the first, or only, argument
must be enclosed in double quotes as shown on the help screen. Each
character string can consist of zero or more ASCII characters. The blank
or space character (ASCII 32) delimits the character strings and can only
be a member of one of the strings that is enclosed in double quotes.
[] brackets indicate optional portions of commands and/or arguments. The
command will work regardless whether these portions are included or not.
The brackets themselves must not be included!
" Where double quotes ("'s) are shown, they must be included if the
corresponding prompt or filespec argument is used.
filespecs consist of a filename and extension as appropriate to the DOS
file naming conventions. They may include drive and path but no wild
card symbols.
chars refers to an ASCII character string. Blanks can only be used in
the strings that must be enclosed in double quotes (but see the use of
surrogates below.)
# is a delimiter denoting that the characters following it are numerical
and have a special significance to the command.
num, sec, and div must be entered as ASCII decimal digit characters
representing a number.
Environment: this column indicates what will be found in the
environment string GET=. This string can be accessed from a
BATch file with the %GET% notation. It is best to enclose %GET%
in some additional characters in case it is empty. For example:
IF "%GET%" == "" will check for an empty GET variable.
Errorlevel: this column indicates what value will be placed in the
DOS errorlevel that can be accessed in BATch files with the
"if errorlevel" subcommand. Always check for ErrorLevel from
highest to lowest values of interest. ErrorLevel is also referred
to as Exit Return Code.
Extended: this column indicates the action taken if the optional
[E]xtended command is included. Do not include the brackets!
In most cases E applies to the result in the Environment or the
result in the ErrorLevel, but not to both.
Surrogates and Extended Characters: Some characters are awkward or
impossible to handle directly. For example, BATch files generally use
the carriage return <CR> and space characters as delimiters instead
of as ASCII characters that can be manipulated. Some special symbols
have been designated to facilitate the handling of these characters.
Extended keys are those with no ASCII representation, such as the
function and cursor keys. Enhanced keys are keys on the enhanced
keyboard which do not appear on older keyboard layouts, such as F11
and F12. These substitutions may have different meanings depending
on the command being used, so read the description of the command.
Carriage Return: }=CR Extended: {=Ext
Escape: ~=Esc Enhanced: Alt-254=Enh
Blank: Alt-255=Space. Break: Alt-253=Ctrl-C
The Alt- characters can be entered in most text editors by holding
down the Alt key while spelling out the digits for the character on
the number pad of the keyboard, but check your text editor for this
capability.
GET USER INPUT: The commands C, N, T, S, I, and Z pertain to obtaining
keyboard input from the user. These commands take 0, 1, or 2 arguments.
"prompt" refers to an arbitrary character string that will be displayed
on the screen to coach the user at to what type of input is expected.
If a prompt is used, it must be enclosed in double quotes.
chars -- also see char information above -- are ASCII character strings
which cannot include the space character, but may include surrogates. If
chars are given, user input will be limited to the characters in the
character string, or the ones indicated by the surrogates. If no chars
are given, any key stroke will be accepted. To indicate that a carriage
return, Esc, space, or Extended key is acceptable, include the surrogate
character listed above. CR and Esc will return 125 and 126 in the
errorlevel respectively, and the surrogate character in the environment.
If extended keyboard characters are specified, the scan code will be in
the errorlevel and the corresponding ASCII byte in the environment
preceded by "{". A table of keyboard scan codes will be useful.
Think of ASCII 255 as an upper-case Space for purposes of GET input.
Enhanced: To indicate that enhanced characters (e.g., F11 and F12) are
acceptable, include the ASCII 254 character instead of {. If you use
ASCII 254 as the surrogate for extended keys, the BIOS function for the
enhanced keyboard will be used. This permits the recognition of F11
and F12 as well as other enhanced keyboard keys. ASCII 254 can
usually be entered by using Alt-254 on the numeric keypad, but check
your text editor for the method it uses. This should not be used
unless you are sure that all users of your batch file will be using
enhanced keyboards because it absolutely does not work on machines
with older BIOS's that do not recognize the extra enhanced keyboard
keys.
Break: A surrogate of ASCII 253 will suppress Control-C and Ctrl-Break
exception handling. This must be the last or only character
argument. It applies only to the S, C, or N commands, and should
be used with caution. Note that this surrogate has a different kind of
meaning and function than the other surrogates.
pattern is a special case of chars in which certain characters have
special meanings. See the S command for detailed information.
# is a delimiter that must immediately follow the chars or pattern
argument if it is used. The number following # will be used to
establish the number of seconds to wait for the first key stroke to
be entered. If timeout takes place with nothing entered, the
ErrorLevel will be 0, and there will be no GET variable in the
environment. If no time is specified, GET will wait forever. If a
wrong key is pressed the timeout is cancelled. The #seconds must be
the last argument, and must contiguously follow any other character
argument. Example: GET C YN#20 will wait 20 seconds for a character
to be entered. If none are entered in that time, GET will exit with
0. If a wrong character (not Y or N) is entered, GET will wait
until a correct character is entered regardless of the time.
General: The C, N, and S commands read characters using a BIOS call so
they bypass Standard Input and most keyboard redefinition methods
(macros). The argument for the C, N, or S commands can consist of
[chars][Alt253][#seconds] in that order, and it must be contiguous.
Please remember that <, >, and | are DOS redirection characters and you
cannot use them as characters in BATch files. 4DOS also uses ^ and
` as special characters so they should not be used either.
Single keystrokes for C, N or T are acted on without pressing Enter.
(String input, of course, will require the user to press Enter.)
The comparison of characters is not case sensitive.
When checking for string matching with the MS DOS BATch IF subcommand,
remember that it is case sensitive. Different versions of DOS handle the
IF "string"=="string" somewhat differently, and there have been several
"bugs" reported in one version or another. Try to test any such
constructs under several versions including DR DOS and 4DOS if possible.
In some versions the string cannot contain any spaces. The test under
4DOS is not case sensitive, and it can contain spaces if the strings are
enclosed in double quotation marks.
C accepts single keystroke character input. The keystroke will not
be echoed to the screen if CE is used. It is often convenient to ask
the user to press the space bar, and the space surrogate makes it easier
to check for a space. (i.e., IF "%GET%"==" " does not work in all DOS
systems if GET contains the space character.)
N is a special case of C. The yes/no aNswer will accept y, n, carriage
return, or Esc. The Ctrl-C surrogate and a number of seconds to wait
may be specified, but no other chars will be recognized.
T the Moving Text feature, is another special case of C.
T requires a file with the prompt string which will be displayed moving
across the bottom line of the screen. Currently only standard 25 line
screens are supported. The text file should be plain ASCII without any
control characters (No CR, LF, or any other characters below ASCII 32).
To be effective the prompt must be over 80 or more characters long, and
to ensure smooth wrap-around the first 79 characters should be repeated
at the end. The maximum length for the text of the moving prompt is
4096 characters. Over that it will be truncated. T does not accept
a waiting period argument at this time.
S accepts character string input terminated by a carriage return.
SE does not echo user input to the screen. This is useful for
hiding the entry of a password, for example. Extended and enhanced
keys will not be accepted, but break can be suppressed. The length of
the string entered is returned in ErrorLevel. If the user presses Esc,
GET will exit and leave the Esc surrogate in the Environment and 1 in
ErrorLevel. The length of a string for the S command can be specified
by creating an argument of characters equal in number to the maximum
length of the string allowed. No argument defaults to 79 characters.
A beep will be sounded if the maximum length has been reached and more
characters are attempted.
The pattern in the argument specifies the acceptable characters
for each position as follows. Note that the upper case
characters T, A, and Z will cause lower case characters to be
converted to upper case. Conversions to upper case also
cause the space character to be converted to ASCII 255. This will
facilitate BATch file checking with the IF subcommand.
tT - any typeable character, T - a-z will be upper cased.
aA - any alphabetic character, A - a-z will be upper cased.
zZ - any alphanumeric character, Z - a-z will be upper cased.
9 - any digit 0-9. Alt-255 - space character only.
Any other character must match the character entered exactly.
I checks to see whether a key has been pressed but it does not wait
for a keystroke if none is in the buffer. The IE command will
read the key if it is present or return 0 and expunge GET from the
environment if no character is waiting. Any character will be
accepted including extended characters, and no surrogate
translation is made. The difference in the IE command from the C
command is that IE checks DOS Standard Input so it responds
to redirected input and Ctrl-C, but it cannot see keys that are only
available on the enhanced keyboard such as F11 and F12.
Z uses the "prompt" string as input. It will put the "prompt"
string into the master environment (if it can find the master
environment). GET ZE, like the old GET S, will take input from
Standard Input and transfer it to the GET= variable in the
current environment. The input must be less than 80 characters
and must be terminated with a carriage return. GET ZE will take
input from the keyboard (Get String), or from redirection or
piping. For example, CD|GET ZE is another way to get the current
directory into the master environment. You can even read the first
line of a text file with GET ZE<filespec. If you don't want to see
the echo from DOS, redirect output to NUL - e.g. CD|GET ZE>NUL or
GET ZE<filespec>NUL. If you specify a prompt for ZE, it will be
displayed before reading standard input. Note that only Z attempts
to put the GET variable in the MASTER environment. If GET is running
under a secondary command processor, the GET variable may not be
available to the current BATch file. See discussion of SHELLS later.
GET DISK and FILE Information: The commands K, Q, L, F, and Y obtain
information about disks and/or files. Q, K and L will check if the drive
contains a formatted disk and return an ERRORLEVEL 0 if it does not.
This avoids the Abort, Retry, etc. error handling. If the ERRORLEVEL is
0 the error code will be in %GET% as a hexadecimal value.
Some error values of interest are:
0 - Write protected diskette
1 - Invalid drive letter
2 - Drive not ready - no disk or door open.
4, 6, 7, 8, & B - Disk read errors
C - General, nonspecific error.
F - Invalid disk change
K disK free space in kilobytes. The only argument is a drive letter.
The default is the current drive.
Q The capacity of a disk. GET Q works just like GET K except that it
returns the capacity of the disk as if it were empty. Q for Quota?
For Q and K the extended command divides the ERRORLEVEL by 100 but doesn't
reduce the Environment variable. If you need a different divisor for
KE you can use the # notation similar to the timeout feature. For example
if you want the ERRORLEVEL in megabytes you can enter GET KE #1024. This
will override the default division by 100 for KE. Prior to version 2.2,
GET did not report accurate information on the new large hard disk
partitions. This is now corrected, and the # feature will be needed to
get ERRORLEVEL information on such large partitions.
L gets the Volume Label of the specified disk. The ErrorLevel contains
the length of the label (0-11 characters). The optional argument is
the drive letter, defaulting to the current drive. If the disk is not
labelled, the GET variable will be expunged and the ERRORLEVEL will be
0. The LE command takes a trial label in the "label" argument
and sets the ERRORLEVEL to indicate whether the disk label
matches. The comparison is case sensitive and there must not be
any trailing blanks in the "label" argument.
F file size in kilobytes. The file size is reported in the Environment
in hexadecimal and in the ErrorLevel as kilobytes. For KE the divisor
is 10. This affects the ErrorLevel only.
The file specification (filespec) is not in quotes and must not
contain wild card characters, but may contain drive and path information.
Directory existence. The F command for GET Filesize can now be used to
determine whether a named directory exists. As usual, if the filespec
is a directory, the ErrorLevel will be 0. If the filespec cannot be
found, the GET variable will be expunged from the environment and a
standard DOS error code will be returned in the ErrorLevel. The
error codes of special interest are 2 for "File not found" and 3 for
"Path not found". For example: GET F "d:\mydir\xxx" will return
2 if the path is found but not the file named XXX, and it will return
a 3 if the path D:\MYDIR is not found. Also, GET F "d:\mydir"
will return 2 in either case since it is not clear whether MYDIR
is a file or a path. Whenever the item specified in the filespec
may not exist, always check for an empty GET variable (IF "%GET%"=="")
which indicates that an error code is in the ErrorLevel.
Y gets the current directory. It takes an optional drive letter argument
which defaults to the current drive. The ErrorLevel reports the
directory level - 0 = root directory, 1 for first subdirectory level,
etc. YE returns the current drive. The drive letter is in the
Environment, and the drive number in the ErrorLevel - 0=A, 1=B, etc.
GET MEMORY/SYSTEM Information: The commands B, P, V, E, M, D, 7, A, and H
obtain information about the operating system and hardware configuration.
B the screen Blanker actually performs a clear screen, not a blanking.
GET B uses your color settings unless you give it a different
attribute to use. It automatically adapts to any number
of lines on the screen (e.g. EGA 43 or VGA 50). If an attribute
argument is given it is taken to be a 1, 2, or 3-digit decimal number
that is converted to a two-digit hexadecimal number for the attribute.
The extended function BE regards an argument as a 1 or 2-digit hex
number, and the GET value in the environment is in hex.
A table of DOS screen attributes will be useful.
P checks whether a printer is available and ready. 1=yes, 0=no.
The [E] option sends the DOS BIOS initialization signal to the printer
as it does during boot-up. This may not work if a print buffer or
spooler is in use unless it can be bypassed. If your printer has an
internal buffer this is a way to flush it. If PE reports no
printer then the print-screen operation (the Print Screen or Shift
PrtSc key) will be disabled to prevent hanging the computer if the
PrtSc key is inadvertently pressed. To enable print-screen again,
run GET PE with a printer attached and ready.
V gets and optionally sets the video mode. A table of video modes
will be helpful. Don't fool around with Video mode unless you know
what you're doing to prevent setting a mode that is not supported by
your monitor. VE will get/set the border color on a VGA or EGA monitor.
E reports the number of bytes of Environment space available. If it
might be over 255 use EE which divides the number of bytes by 10.
M reports the free memory available in kilobytes. ME divides by 10.
D reports the DOS version. The ErrorLevel will contain a number such as
33 for DOS 3.3. The Environment will contain the major version such
as 3 for DOS 3.0, 3.1, 3.3, or 3.3. DE will report the minor version
in the Environment such as 1 for DOS 3.1.
7 reports whether a math coprocessor is installed. 1=yes, 0=no.
GET 7E reports the CPU chip type - 0 for 8088/86, 2 for 80286, or
3 for 80386 or later.
A reports whether ANSI.SYS is loaded. If you are using an ANSI.SYS
clone, check to see if it works with yours.
GET AE will return the ROM BIOS model byte. At this time the
only documented bytes listed in "The NEW Peter Norton's
Programmer's Guide to the IBM PC and PS/2" (Page 64) are:
FF(255)=PC(1981) FE(254)=PC or PC/XT(1982) FD(253)=PCjr(1983)
FC(252)=PC/AT(1984-85),PC/XT Model 286(1986),PS/2 Model 50/60(1987)
FB(251)=PC/XT(1986) FA(250)=PS/2 Model 25(1987)/30(1986)
F9(249)=PC Convertible F8(248)=PS/2 Model 80(1987)
(Example: My 80386 AT clone is an FC).
H The new H Date and Time command works slightly differently than
most of the others. The value(s) to be gotten are determined by
a coded numerical argument. The codes to be summed are:
1 Day of the Week(default) 16 Hour
2 Day of the Month 32 Minute
4 Month 64 Second
8 Year 128 Odd or Even
With the HE command, you add up the codes for the values you want
concatenated together in the environment. With this form of the
command the ErrorLevel is the length of the GET variable, but it
is not very meaningful or useful. The unextended H command will
return a single value in both the ErrorLevel and the Environment.
If you sum codes for H, only the lowest value in the sum will be
recognized and the value returned. If 128 is added in, the
ErrorLevel will report only if the value is Odd(=1) or Even(=0)
for H. 128 does nothing for HE. Example: GET HE 14 will
set GET=mm-dd-yy and place 8 in the ERRORLEVEL.
PERFORM AN ACTION: The GET commands U, V, B, P, W, and Z will perform
some system action or setting. V, B, P, and Z have already been
documented above and only a brief review will be given here.
V can set video mode or border color.
B can set the screen attribute.
P can reset the printer and turn off PrtSc.
Z can place a string in the master environment.
W will reboot the computer as if the 3-finger salute was pressed.
WE will reboot as if the computer was turned off then on again.
If any characters are present as an argument, GET will attempt to
determine if the preceding boot was warm or cold instead of
rebooting. This does not work on all machines (it worked on my XT
but not on my 386). If successful, a 1 indicates the previous boot
was warm, 0 means it was a cold boot.
U will stack keys in the keyboard bUffer. The syntax is
GET U "chars" num#num
where chars are any ASCII characters you want stacked, and the "num"s
are decimal representations of values for either ASCII codes or scan
codes. Up to 4 digits can be used for either number. E.g. to end
the string with a carriage return use #13. To enter a scan code
add it to 255. E.g. the scan code for F1 is decimal 59 so use
314. The following will stack the word "help" in the buffer and
execute it as a command by stacking the Enter key:
GET U "help" #13
The following command will stack the F1 key:
GET U 314
NOTE: GET U will only work on AT class machines and later!
With GET U you can provide a default entry for a GET S string;
however, the DOS keyboard buffer only holds 16 characters, so it has
to be rather short. Use GET U "default" followed by GET S "prompt",
and the default string will be entered for the user. The user can
either change or accept it; but the user will have to backspace to
change it.
The UE command will let you adjust the Caps, Num, and Scroll Locks.
Sum the numbers for Scroll=16, Num=32, Caps=64 for the Locks you want
to set. The other(s) will be cleared. You must use GET UE #num.
ENVIRONMENT AND SHELLS: This is a brief, general discussion of the DOS
Environment for those who may not be sufficiently familiar with it.
The DOS Environment is a small area (usually) of memory that DOS
automatically allocates to every program that it is asked to load or
run. The "master" environment is the original Environment allocated to
COMMAND.COM or 4DOS or whichever command processor you are using. The
original size of the Environment can be set in later versions of DOS by
using the SHELL command in your CONFIG.SYS file. However, the setting
of Environment size is not a SHELL command function, but is a command
processor option. For example, the COMMAND.COM /E: switch lets you set
the size if you are using COMMAND.COM as your command processor. For
documentation look under such topics as SHELL, COMMAND, and Configuring
Your System in your DOS manual. Since most new programs make extensive
use of the Environment, it is important to be sure enough Environment
space is allocated to accommodate them all. If you see the error
message "Out of Environment Space", you know that you do not have
enough allocated.
You can view the contents of the Environment by issuing the DOS SET
command with no arguments at the DOS prompt. You will see a sequence of
variable names, each followed by the "=" sign and the string value
assigned to the variable. For example, COMSPEC=C:\COMMAND.COM. You can
also store string information in the Environment with the SET command
by specifying it in the same manner as it is displayed. For example,
SET PATH=C:\;C:\DOS. Do not place any spaces on either side of the "="
sign unless you intend for the space to be either a part of the variable
name or a part of the string. When DOS loads and runs a COM or EXE
program file, that program receives a copy of the Environment as it is
at that time, trimmed down so that only a few bytes remain free. This
copy does not change unless the program that owns it changes it.
Note that some DOS "shells" shield the master environment from programs
that are executed by the shell. If you find that to be the case, the
information will usually be available to the BATch file from the
environment of the secondary command processor loaded by the shell as is
usually necessary to run a BATch file. Except for the Z command, GET
only attempts to locate the environment of the command processor that is
running the BATch file, so the environment information can disappear if
the shell or the secondary command processor is terminated. GET
attempts to place the information where the BATch file can locate it
since that is its primary purpose. Also, when running from a shell
there may be problems with "Out of environment space" since DOS does not
usually allocate excess environment space to child processes. 4DOS
provides a means to ensure that copies of the environment have
sufficient space available. Check the documentation for your shell to
see if it can make sufficient environment space available. You can
always ensure that GET has enough environment space to store its results
by establishing a dummy GET variable before loading any shells or other
programs. The best way would be to do it in your AUTOEXEC.BAT. Simply
insert the command SET GET=xxxxxxxxxxxxxxxx in your AUTOEXEC.BAT file
with enough x's or other characters for the maximum length input string
you are expecting.
PROGRAM INFORMATION:
GET is programmed in assembly language for MS-DOS computers. It was
assembled with Borland's Turbo Assembler, and compressed with LZEXE.
If you need more BATch programming capability than is included here, I
suggest you look into one of the more general BATch programming
products such as the Shareware product, Extended Batch Language (EBL)
which is available through most sources of shareware.
Some of the code for GET was adapted from the sample program named
WHAT.ASM included with Microsoft Macro Assembler (MASM). The MASM
documentation declares that the sample programs are in the public
domain. For examples of GET, look at the BATch files on the MASDIR
disk mentioned below for the use of a similar program called SDL_GET.
You can do a lot in BATch programming with this utility.
LICENSING: Although this version of GET remains free for personal use
for all to enjoy, if you like GET and would like to help support
development of inexpensive software, please send a contribution to the
address below. Thank you for any support you care to provide. If you
send $15 or more you will receive the following benefits:
The latest version of GET with any new features.
A smaller runtime version to distribute with your BATch files.
A single user license with no royalties for use of the runtime version.
Printed documentation giving examples and more detailed explanations.
Free support by BBS, mail, phone, CompuServe, or Genie (see below).
Notification of new releases and inexpensive upgrades.
Corporate users must obtain a site license from me for in-house use.
If GET is to be installed on 2 machines $25, 3 machines $35, plus $5
for each additional machine. None of the above licensing terms
includes using GET in conjunction with the distribution of a
commercial (retail) software product other than shareware,
user-supported, or public domain software. To use GET in conjunction
with the distribution of a retail software product you must contact
me to discuss terms. Call or message me if you are interested.
BBS SYSOPs, PC User Groups, and shareware authors and distributors are
hereby granted a single user license to use GET for their own purposes
and to freely distribute unmodified copies of this version of GET.EXE
GET.DOC and GET22NEW.DOC together as a unit. If an unregistered version
of GET is used in conjunction with the distribution of a shareware or
public domain software product, the distribution disk must include
GET.DOC and GET22NEW.DOC.
If you have any questions, comments, or suggestions please contact me at:
MOBY DISK: 1021 San Carlos Road, Pebble Beach, CA 93953
Phone: (408) 646-1899/1373. GENIE:MOBYDISK. COMPUSERVE:72357,2276
BBS: The Cricket 408-373-3773 /s/ Bob Stephan May 27, 1991
Now for the commercial: If you like GET please try MASDIR!
MASDIR (pronounced 'master') the MASter DIRectory System, is a general
purpose sorted directory program with unique customization and disk label
printing features. If you ever use DIR, you should do yourself a
favor and take a look at MASDIR. The main program, SDL.COM, is one of the
best sorted directory programs anywhere. The setup program allows you to
set the many defaults to your own specifications, including customizing
the titles that appear in the header. In addition, you can print disk
labels and/or sleeve inserts for 5.25" and 3.5" diskettes. This really
saves you a lot of time when you are looking through your collection of
diskettes for a particular file. They are all listed conveniently along
with your own description in the title lines. You can also create disk
file catalogs of your diskettes and directories that you can then
annotate to describe individual files.
Additional features include listing only subdirectories or not
listing them at all, listing only files created today or within a
specified period, reverse sorting for any of the sort options, the
amount of space a group of files will occupy for different cluster
sizes, support for DR DOS and 4DOS, SETting defaults in the environment,
enter two file specifications such as *.COM *.EXE, paging up and
down in large directories, show only files that have not been backed
up, and many more.
As of the above date, the current release of MASDIR is Version 5.4. It
is a shareware program that is available on bulletin boards, GENIE,
CompuServe, The Public (software) Library, and from other distributors
of public domain and shareware programs. If you cannot conveniently
locate a copy, I will be happy to send you one. Just contact me as
indicated above. Thank you for your kind attention. /Bob/